package com.mayavi.bc.impl;

import java.sql.Timestamp;
import java.util.List;

import com.mayavi.bc.IMovieTagBc;
import com.mayavi.bo.MovieTagBo;
import com.mayavi.dao.IMovieTagDao;
import com.mayavi.dto.MovieTagDto;

public class MovieTagBcImpl implements IMovieTagBc {

	private IMovieTagDao tagDao;

	@Override
	public List<MovieTagBo> getAllTags() {
		return tagDao.getAllTags();
	}

	@Override
	public MovieTagBo getTagById(Integer id) {
		return tagDao.getTagById(id);
	}

	@Override
	public void saveTag(MovieTagDto dto) {
		MovieTagBo tagBo;
		Integer id = dto.getId();
		if (id == null) {
			tagBo = new MovieTagBo(dto);
		} else {
			tagBo = tagDao.getTagById(id);
			tagBo.setLastModifiedByUserId(dto.getModifiedById());
			tagBo.setLastModifiedTstamp(new Timestamp(System
					.currentTimeMillis()));
		}
		tagDao.saveTag(tagBo);
	}

	public IMovieTagDao getTagDao() {
		return tagDao;
	}

	public void setTagDao(IMovieTagDao tagDao) {
		this.tagDao = tagDao;
	}

}
